// pages/pay/index.js
Page({

    /**
     * 页面的初始数据
     */
    data: {
        index: 1
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {

    },

    /**
     * 点击金额选项
     */
    choose (e) {
        let data = e.currentTarget.dataset
        this.setData({
            index: data.amount
        })
    },
    pay () {
        let amount = this.data.index
        if (!/^\d*$/.test(amount)) {
            wx.showToast({
                title: '输入金额格式不对',
                icon: 'none'
            })
            return
        }

        if (amount) {
            amount = amount * 100
        }

        wx.cloud.callFunction({
            name: 'order',
            data: {
                totalFee: this.data.index
            },
            success: (res) => {
                console.log('返回结果 =======>', JSON.stringify(res))
                res = res.result
                wx.requestPayment({
                    timeStamp: res.timeStamp,
                    nonceStr: res.nonceStr,
                    package: res.package,
                    signType: 'MD5',
                    paySign: res.paySign,
                    success (res) {
                        if (res.errMsg == 'requestPayment:ok') {
                            wx.showToast({
                                title: '支付成功',
                                icon: 'success'
                            })
                        }
                    },
                    fail(res) {
                        if (res.errMsg == 'requestPayment:fail cancel') {
                            wx.showToast({
                                title: '支付取消',
                                icon: 'none'
                            })
                        } else {
                            wx.showToast({
                                title: res.errMsg,
                                icon: 'none'
                            })
                        }
                    }
                })
            },
            fail: err => {
                wx.showToast({
                    title: err.errMsg,
                    icon: 'none'
                })
                console.log('云函数调用失败', err)
            }
        })
    },
    /**
     * 获取文本框金额的值
     */
    getMoney(e) {
        let amount = e.detail.value
        this.setData({
            index: amount * 100
        })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})